import java.util.*;


public class File{
    String name;
    int fileSize;
    int pieceSize;
	List<String> peers;

    /**
     * Constructeur. 
     * @param name le nom du fichier.
     * @param sizeFile la taille du fichier.
     * @param sizePeace la taille des pièces.
     */
    File(String name, int sizeFile, int sizePeace){
        this.name = name;
        this.fileSize = sizeFile;
        this.pieceSize = sizePeace;
        peers = new LinkedList<String> ();
    }
    
    /**
     * Constructeur, par défaut la taille des pièces est initialisée à 2048 octets.
     * @param name le nom du fichier.
     * @param sizeFile la taille du fichier.
     */
    File(String name, int sizeFile){
    	this.name = name;
        this.fileSize = sizeFile;
        this.pieceSize = 2048;
        peers = new LinkedList<String> ();
    }
	/**
	 * Ajoute la clé d'un pair possédant le fichier.
	 * @param p le pair à ajouter.
	 */
	public void addPeer(Peer p) {
		  String key = p.getKey();  
	    if (!peers.contains(key)){
	    	peers.add(key);    
	    }
	}

	/**
	    * Supprime un des pairs qui possèdent ce fichier.
	    * @param p la pair à supprimer.
	    */
	public void delPeer(Peer p) {
		  String key = p.getKey();  
		  peers.remove(key);        
	}





}
